1. Technical Field
The present invention provides an improved data processing system and in particular a method and apparatus for processing graphics data. Still more particularly, the present invention provides a method and apparatus for simulating direct frame buffer access in a data processing system.
2. Description of Related Art
Computer graphics concerns the synthesis or display of real or imaginary objects from computer-based models. In computer graphics systems, images are displayed on a display device to a user in two dimensional and three dimensional forms. These images are displayed using pixels. A pixel is short for a picture element. One spot in a rectilinear grid of thousands of such spots that are individually “painted” to form an image produced on the screen by a computer or on paper by a printer. A pixel is the smallest element that display or print hardware and software can manipulate in creating letters, numbers, or graphics. These pixels and information relating to these pixels are stored in a buffer.
One buffer in which this information may be stored is a frame buffer, which is an area of memory used to hold a frame of data. A frame buffer is typically used for screen display and is the size of the maximum image area on screen. This memory is a separate memory bank on a display adapter that holds a bitmapped image while the image is being “painted” or presented on screen.
One feature available on many graphics cards is direct frame buffer access (DFA). Typically, an application will request an area in the frame buffer memory, which may be on-screen or off-screen. In response, a pointer is returned to the application for the memory area. The application may then perform direct reads and writes to this memory area. This process allows the application to directly access the frame buffer memory on the graphics adapter. Such a feature is a prevalent function and mechanism provided on many graphics cards.
In some cases, this DFA function may be unavailable or unsupported. In these instances, an application designed to use DFA may be unable to function properly on the data processing system in which this function is not found. Therefore, it would be advantageous to have an improved method and apparatus for supporting DFA in a data processing system.